// 访问器属性不能直接定义 包含一对get set 方法
// 四个特性 Configurable 默认是false Enumerable 默认也是false
// get 读取访问器属性会触发get方法 修改定义访问器属性会触发set方法
var obj={
    _year:2000,//_year表示私有属性
    editor:1
}
// 访问器属性
Object.defineProperty(obj,'year',{
    // 表示访问器属性可以被读取 不可以被写入
    get:function(){
        return this._year
    },
    set:function(newYear) {
        if(newYear!=this._year){
           this._year=newYear;
           this.editor++ 
        }
    }
});
console.log(obj._year,'读取访问器属性');
obj.year=2001;
console.log(obj.year,'访问器属性');
console.log(obj._year,'修改之后的私有属性');
console.log(obj.editor,'修改后的editor');
console.log(Object.getOwnPropertyDescriptors(obj));
console.log(obj);